﻿using System;
using System.Collections.Generic;
using Volo.Abp.Domain.Entities.Auditing;
using YaAppoint.Rules;

namespace YaAppoint
{
    /// <summary>
    /// 规则
    /// </summary>
    public class RuleGroup:FullAuditedEntity<Guid>
    {
        /// <summary>
        /// 所属层级
        /// </summary>
        public virtual RuleLevel Level { get; set; }

        /// <summary>
        /// 名称
        /// </summary>
        public virtual string Name
        {
            get;set;
        }

        /// <summary>
        /// 排序
        /// </summary>
        public virtual int Order { get; set; }

        /// <summary>
        /// 活动
        /// </summary>
        public virtual bool IsActive { get; set; }

        /// <summary>
        /// 描述
        /// </summary>
        public virtual string? Description { get; set; }

        /// <summary>
        /// 设备类型ID
        /// </summary>
        public virtual Guid? DeviceTypeId { get; set; }

        /// <summary>
        /// 设备类型
        /// </summary>
        public virtual DeviceType? DeviceType { get; set; }

        /// <summary>
        /// 科室ID
        /// </summary>
        public virtual Guid? DepartmentId { get; set; }

        /// <summary>
        /// 科室
        /// </summary>
        public virtual Department? Department { get; set; }

        /// <summary>
        /// 设备ID
        /// </summary>
        public virtual Guid? DeviceId { get; set; }

        /// <summary>
        /// 设备
        /// </summary>
        public virtual Device? Device { get; set; }

        /// <summary>
        /// 规则集合
        /// </summary>
        public virtual List<Rule> Rules { get; set; }
    }
}
